当前位置:  开发笔记 > 后端 > 正文

mysqldump | mysql产生'太多打开文件'错误.为什么?

如何解决《mysqldump|mysql产生'太多打开文件'错误.为什么?》经验,为你挑选了1个好方法。

我有一个RHEL 5系统,带有一个全新的硬盘驱动器,我专门用于MySQL服务器.为了开始,我使用了"mysqldump --host otherhost -A | mysql",尽管我注意到manpage从未明确地建议尝试这个(mysqldump进入文件是不行的.我们正在谈论500G的数据库).

这个过程以随机的间隔失败,抱怨打开的文件太多(此时mysqld获取相关信号,并且死亡和重生).

我尝试在sysctl和ulimit上升它,但问题仍然存在.我该怎么办?



1> VolkerK..:

mysqldump默认执行所有相关表的每表锁.如果有许多表可能超过mysql服务器进程的文件描述符数量.尝试--skip-lock-tables或者如果锁定是必要的--lock-all-tables.
http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

--lock-all-tables, -x

Lock all tables across all databases. This is achieved by acquiring a global read lock for the duration of the whole dump. This option automatically turns off --single-transaction and --lock-tables.

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有